/**
 * Project Name:fire-industry-DM-center
 * File Name:IProjectService.java
 * Package Name:com.firestone.service.company
 * Date:2018年4月12日上午9:33:37
 *
*/

package com.firestone.service.company;

import org.springframework.data.domain.Page;
import org.springframework.data.elasticsearch.core.query.SearchQuery;

import com.firestone.bean.dto.PageDTO;
import com.firestone.bean.dto.company.SearchDTO;
import com.firestone.bean.entity.elasticsearch.dm.DmMapProject;
import com.firestone.bean.entity.elasticsearch.im.DmImProject;

/**
 * @Description: TODO(产业地图企业管理)
 * @author CAIYJ
 * @date 2018年4月12日 上午9:33:37
 */
public interface IProjectService {

    /**
     * @Description: TODO(数据仓库企业列表)
     * @param search
     * @return
     * @throws Exception
     * @author CAIYJ
     * @date 2018年4月12日 下午4:29:55
     * @lastModifier CAIYJ
     */
    Page<DmMapProject> mapList(SearchDTO search, PageDTO page) throws Exception;

    /**
     * @Description: TODO(根据ID查询企业列表)
     * @param ids
     * @return
     * @throws Exception
     * @author CAIYJ
     * @date 2018年4月12日 下午6:04:39
     * @lastModifier CAIYJ
     */
    Page<DmImProject> imListByIds(Page<DmMapProject> page) throws Exception;

    /**
     * @Description: TODO(企业推送给产业地图)
     * @param searchQuery
     * @param mapIds
     * @return
     * @throws Exception
     * @author CAIYJ
     * @date 2018年4月16日 下午1:25:10
     * @lastModifier CAIYJ
     */
    void push(SearchQuery searchQuery, Long... mapIds) throws Exception;

    /**
     * @Description: TODO(企业从产业地图拉下线)
     * @param searchQuery
     * @param mapIds
     * @return
     * @throws Exception
     * @author CAIYJ
     * @date 2018年4月16日 下午1:25:10
     * @lastModifier CAIYJ
     */
    void pull(SearchQuery searchQuery, Long... mapIds) throws Exception;
    
}
